package xkp.lesson3;

public class TestRunable {
    public static void main(String[] args) {
        MyRunnable myRunnable = new MyRunnable();
        //myRunnable.start();
        //创建一个线程对象，并制定要执行的任务
        //把myRunnable对象中的run方法，交给Thread对象调用
        Thread thread1 = new Thread(myRunnable);
        Thread thread2 = new Thread(myRunnable);
        thread1.start();
        thread2.start();
    }
}

/**
 * Runnable接口中只有一个抽象方法
 * Runnable接口的实现类不是一个真正线程对象，它只说明了线程要执行的任务
 * 刻意通过Runnable接口的实现类创建一个线程对象
 * **/
class MyRunnable implements Runnable{

    @Override
    public void run() {
        for(int i =1; i <= 10; i++){
            //Thread.currentThread()当前线程
            System.out.println(i+":"+Thread.currentThread().getName());
            //希望线程执行慢一点 可以使线程休眠
            try {
                Thread.sleep(10);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
}
